javascript - JavaScript 库的测试驱动开发
全部标签 it'shouldbeanarrayandnotbeempty'dopendingexpect(a.class).tobe(Array)expect(a.empty?).tobe(false)expect(a.first.class).tobe(ExampleClass)end当我运行rspec时:Failures:1)shouldbeanarrayandnotbeemptyFIXEDExpectedpending'Noreasongiven'tofail.NoErrorwasraised.#./spec/example_spec.rb:19知道为什么这会被列为失败吗?
我总是听说UML在Java项目中使用,但从未在Ruby项目中使用。这仅仅是文化差异,还是Ruby开发中对建模的需求较少,因为它是更“敏捷”文化的一部分? 最佳答案 显然你不能将这一点推广到每个人,但是使用Ruby和Python等语言的程序员往往不太喜欢大型设计文档和UML,因为他们认为他们选择的语言足够简洁和富有表现力,所以它不是总是必要的。有一种感觉,“我可以花时间在UML中绘制出所有这些......或者我可以编写一些Python来实际实现设计并用我喜欢阅读的语言表达它并且很多人可以阅读。”Java程序往往比Ruby或Python
当我用spork运行我的rspec测试时,每次我使用capybara的save_and_open_page时,spork都会丢失测试套件......或者可能不再输出任何东西......查看日志#=>withoutsave_and_open_page09:04:24-INFO-SporkserverforRSpec,Test::Unitsuccessfullystarted09:04:24-INFO-Guard::RSpecisrunning09:04:24-INFO-RunningallspecsRunningtestswithargs["--drb","-f","progress",
我有一个包含RailsActionController::Live模块的Controller。我正在显示一个日志文件的内容,它正在使用FileTailgem读取,并使用ActionController::Live中的SSE像这样:classLogsControllereRails.logger.info"ErrorMessage::#{e.message}"ensuresse.closeendend我想使用Rspec测试live操作。这是我目前拥有的:before{get:live}it{expect(response.headers['Content-Type']).toeq("te
我已经使用RoR进行开发一年多了,但我才刚刚开始使用RSpec进行测试。对于标准模型/Controller测试,我通常没有任何问题,但问题是我想测试一些复杂的功能流程,并且不知道如何构建我的测试文件夹/文件/数据库。这是我的应用程序的基本结构:classCustomerhas_one:wallethas_many:ordershas_many:invoices,through::ordershas_many:invoice_summariesendclassWalletbelongs_to:customerendclassOrderhas_one:invoicebelongs_to:c
场景我提取了一个名为Taggable的关注点。它是一个允许任何模型支持标记的模块。我已将此关注点/模块包含到模型中,例如User、Location、Places、Projects。我想为这个模块编写测试,但不知道从哪里开始。问题1。我可以对Taggable问题进行隔离测试吗?在下面的示例中,测试失败是因为测试正在查找dummy_class表。我假设它这样做是因为Taggable中的has_many代码,因此它期望'DummyClass'是一个ActiveRecord对象。#/app/models/concerns/taggable.rbmoduleTaggableextendActiv
在Java中,通常您会创建两个具有相同包层次结构的源文件夹src和test。在Ruby中,您是否只是将所有测试放在与被测类相同的文件夹中?还是在单独的文件夹中创建类似的层次结构?如果是这样,您如何管理单元测试中的require路径? 最佳答案 起初,每个gem都有一个典型的布局。代码几乎完全在lib中。在根目录中,只有README、gemspec文件和一些可选配置数据等元数据。如果您使用Rails或Sinatra之类的工具编写Web应用程序,则会改用它们的布局标准。尽管在所有这些项目类型中,都可以在相似的位置找到测试。根据您使用的测
我已经使用sinatra编写了一个基本的RESTAPI。有谁知道为它编写测试的最佳方法吗?我想使用Ruby来做到这一点。我已经使用curl完成了初步测试。但我想做一些更强大的事情。这是我的第一个API-有什么我应该测试的具体内容吗? 最佳答案 最好的方式见仁见智:)就我个人而言,我喜欢简单干净。使用像minitest这样的工具,Watir和rest-client,您可以对REST界面进行非常简单的测试,并通过实际浏览器(支持所有主要浏览器)测试您的Web服务。#!/usr/bin/ruby##Requiresthatyouhavei
我看到两种样式都被广泛使用:#1lambda{raise"Boom"}.shouldraise_error和#2expect{raise"Boom"}.toraise_error.我喜欢expect..tomore,因为它读起来更好,并且隐藏了过程的创建。我查看了rspec代码,似乎expect..to是suggested,但是我经常遇到使用lambda..should的库。期望..更新,因此还不是“著名”吗? 最佳答案 expect从rspec-2开始使用,之前必须使用lambda。RSpec“正式”建议使用expect,他们可能
我正在编写一个与Rails集成的gem,我希望能够在我的gem的测试套件中使用rspec测试一个虚拟应用程序。当我测试我的虚拟rails应用程序是否通过加载/几个模块时,问题出现了rspec规范/integration/rails/load_path_spec.rb到目前为止,这是我所拥有的:#spec/support/rails_app/config/environment.rb#LoadtheRailsapplication.requireFile.expand_path('../application',__FILE__)#Loadthegemrequire'skinny_con